Network, control and telecommunications systems at one time used separate infrastructures to perform the work they were designed for. This was needed but also costly to install, maintain and upgrade these systems for any organization.
Today however what once were desperate systems requiring separate infrastructures are now systems that use the same network communications infrastructure to connect to their respective devices. At the same time voice-over-internet-protocol (VoIP) telecommunications systems have presented to organizations that implement such systems with the potential for increased efficiency due to the simplification and integration capabilities of this VoIP system.
One important piece that needs to be addressed is exactly how can a VoIP telecommunications system actually control or become informed by a system that was never intended to be controlled or to inform any other system? Solving this problem would allow a VoIP system to demonstrate that their system does increase organizations efficiency. This same VoIP implementation would be a significant cost savings for any organization increasing the impact this system would have on any organization. This would increase the efficiency for organizations implementing such a system and reduce cost in other infrastructures that would be needed to provide the same functionality.
Examples of some of these other systems include:    1. Entrance and Exit Control through surveillance and actuator control at these egress/ingress points, such as Schools, Colleges, Municipal Buildings, Correctional Institutions (to indicate a Request to Enter or Exit, and/or to indicate someone passed this area).    2. Information Indicators and Alarms for Nursing Homes, Residence Rooms, Hospitals. For example, the operation of the system in accordance with the following disclosure could include a situation where a person places a call for a specific need, a light indicating the request is lit to visually indicate the need, a bell is set to audibly indicate the need, and the call is placed to an assigned phone(s). Next the call is picked up and answered, a determination to set a different light for an Emergency could remotely be decided. Similarly, any number of variations may be employed as defined by the need. Information indicators, lights, bells, buzzers/chimes, etc. may also find application in schools, colleges, municipal buildings and correctional institutions. Thus, the system may also be employed to indicate that a room needs assistance, and where different indicators could mean different reasons specific to this location.
Others have designed their own subsystem to integrate into the existing telecommunications systems. These subsystems are separate servers running separate applications still using a separate infrastructure, or they use older TDM, PBX subsystems. The integration capability of the Integrated Telecommunications/Networked VoIP systems are not fully utilized.
These Integrated Telecommunications/Networked VoIP systems use Ethernet, wireless, fiber etc. to connect each part together. These systems rely on integrated database subsystems for functionality. None integrates into the database subsystems to allow a Call Center Application from the telecommunications provider connected into this Ethernet system to directly control these Input/Output Devices.
These new integrated systems need to deliver to their customers what is “sold” as would happen as a result of the level of integration these systems provide. What was explained is that they would gain this increased flexibility that would enable the seamless integration and control of these other systems. This was touted as a cost savings and as of yet the full potential of this flexibility is left to subsystem developers and manufacturers. What is needed is a way to integrate the IO Control into these newly acquired systems that will deliver on the promise.
To assist in setting the context for the present disclosure, the existing capability of a telecommunications system (e.g. Cisco) will now be described. The Cisco Call Manager (CCM) has a Call Control server, whereby calls are recognized and directed to the requesting location. In accordance with an aspect of the disclosed system and method, an iCall script/program will be resident either on IPCC-Cisco Call Center or appropriate location to provide the functionality described herein. In other words, this script/program would need to reside on another server sold by the subsystem manufacturer. Calls presented to this server from CCM will be treated as needed. For example, the need will be defined by the Called Number and will be reflected in the work that the script/program performs. Fields in the Database are Set or Read and actions are performed as defined by the need.
For analog or IP phones the action may simply be to allow access to the outside world and to this iCall integration if that is the number called. Some phones may automatically request iCall when picked up (e.g., an emergency phone where no dialing is required). Applicant understands this is integration beyond what separate systems can presently offer.
Aspects of the present disclosed system and method (iCall) also supplement Cisco or other VoIP integrated system capability to interface to external IO devices. The following are some additional examples of such capabilities.
Intelligent IO Subsystem—This is the analog/digital input-output subsystem such as OPTO-22 SNAP Automation Controllers that interfaces with any and all end effectors, indicators or input devices that exist in any building. In one embodiment the Intelligent IO subsystem is a self-contained autonomous subsystem that interfaces to the Cisco AVVID or other VoIP system either through a wired or wireless connection currently used by this system. The interface mechanism is either through a database that may or may not be ODBC compliant or through a customized application that stores information that represents the state of any end effectors, indicators, output or input devices.
Database such as SQL, MySQL, etc or custom application such as Filemaker integration provides the ability to have the separate systems work together. This database or custom application integration is what allows these systems to work together—allowing for non-physically or logically connected systems to work together while sharing the same connection to the network. They perform work by polling for a change to the database or custom application and then perform an action when a state change is noticed or sends an update to the database or custom application as an end result of polling to update the state or to change the state of any end effectors, indicators, output or input devices.
The iCall system would also have the ability to control mechanisms (end effectors, indicators or input devices) to:
a. Select an action such as set a door lock to unlock a door;
b. Cancel an action such as release a door lock to lock a door.
c. Read an Output action request including, for example, once set by the database or custom application indicator or end effectors output state change as requested by IPCC, separate Application or other Call Center system to indicate or control a needed action such as turning a light on or off, turning a sound generating device on or off. Also included would be reading an input state change such as one identified by the Intelligent IO Subsystem where a state change would occur in the database or custom application and then read by the IPCC, separate Application or other Call Center system. For example, to indicate something passed in front of the detector.
The iCall may be operated with or under the control of a software application, program or script to logically integrate all of the components. Why is there value in a software program? One of the advantages of the iCall system is that the application, script or program and the IO environment resides in different locations. In such an embodiment the IPCC or other Call Center system is developed to produce a control algorithm designed for the control that is needed for this particular implementation. Such a control algorithm includes reads and writes to a newly created database or data container that was created for this purpose, and which may reside in either CCM, separate or IPCC servers. Moreover, the database application is the SQL server that exists on the Cisco server such as IPCC or CCM. This configuration is believed to provide a significant cost savings as it utilizes the existing SQL database that resides on either or both systems. Furthermore, flexibility is created due to the use of the existing database system that changes or reads the state of the external indicators, end effectors or input devices. Flexibility is further enhanced through the use of existing network infrastructure such as cabling, layer 3 or layer 2 network devices, which is a cost savings in itself. Although described relative to a Cisco system, the advantages and efficiencies set forth herein may be similarly achieved with other telecommunications systems.
The iCall system will further include Intelligent IO system or Modules as subsystems. This external sub system contains its own application, script or custom application to read from or write to the database or custom application. Therefore the integration of separate systems through the use of a database or external application allows uniquely different systems that were never designed to work together to be able to do just that. In one embodiment a program specific to this function will read and write data between the separate systems. In other words, the operating program will logically bind these two discrete and separate systems so they can work together. The disclosed system and method contemplates the program, residing in one or more portions of the system, including its own computer, the database, Call Manager, IPCC or IO controller.
Disclosed in embodiments herein is a system or method for expanding the functionality of a telecommunications system using atypical electrical and/or electromechanical devices, comprising: providing a plurality of electromechanical devices that are connected to either to an Intelligent IO device or slave to this Intelligent IO device and is accessible through the network via the logical interconnection which is updated and controlled by each separate system; assigning each electromechanical device an associated position (IP address) consistent with the desired implementation which is reflected in the database of the telecommunications system or other device that contains the database for this purpose; providing a database table reflecting the status of each electromechanical device; accessing the database upon detecting a change in state of the electromechanical device; and altering the performance of the electromechanical device by changing the state of the device in the database, said change being initiated by an operation performed in the telecommunications system.